package com.ds.infra.ibatis.type;

import java.sql.PreparedStatement;
import java.sql.SQLException;

/**
 * 作用：String类型处理器，用于设置PreparedStatement中的 String类型参数。
 *
 * @author WeiShaoying
 */
public class StringTypeHandler implements TypeHandler<String> {
    @Override
    public void setParameter(PreparedStatement ps, int parameterIndex, String parameter) throws SQLException {
        if (parameter == null) {
            // 如果参数为null，则设置PreparedStatement的对应位置为NULL
            ps.setNull(parameterIndex, java.sql.Types.VARCHAR);
        } else {
            // 否则，设置PreparedStatement的对应位置为String类型参数的值
            ps.setString(parameterIndex, parameter);
        }
    }
}
